package gov.pbc.nn.kjgl.item.entity;

import java.util.Date;

import gov.pbc.nn.kjgl.item.template.entity.AbstractItem;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.Table;

import com.bstek.dorado.annotation.PropertyDef;

@Entity
@Table(name = "T_EMAIL_ITEM")
public class EmailItem extends AbstractItem {

	private static final long serialVersionUID = 7218472505358271437L;

	@Column(name = "DEPT_ID_", length = 60)
	private String deptId;

	@Column(name = "DEPT_NAME_", length = 300)
	@PropertyDef(label = "申请部门", description = "申请部门:申请部门")
	private String deptName;

	@Column(name = "TIME_", length = 60)
	@PropertyDef(label = "申请日期", description = "申请日期:申请日期")
	private Date time;

	@Column(name = "USER_CNAME_", length = 120)
	@PropertyDef(label = "申请人姓名", description = "申请人姓名:申请人姓名")
	private String userCname;

	@Column(name = "TEL_", length = 120)
	@PropertyDef(label = "联系电话", description = "联系电话:联系电话")
	private String tel;

	@Column(name = "SYSTEM_")
	@PropertyDef(label = "系统", description = "0:办公网邮件系统；1:业务网邮件系统")
	private int system;

	@Column(name = "NEW_EMAIL_")
	@PropertyDef(label = "新建邮箱", description = "新建邮箱：新建邮箱")
	private String newEmail;

	@Column(name = "PUBLIC_EMAIL_", length = 120)
	@PropertyDef(label = "公共邮箱名", description = "公共邮箱名:公共邮箱名")
	private String publicEmail;

	@Column(name = "PRIVATE_EMAIL_", length = 120)
	@PropertyDef(label = "个人邮箱名", description = "个人邮箱名:个人邮箱名")
	private String privateEmail;

	@Column(name = "SET_PUBLIC_EMAIL_", length = 120)
	@PropertyDef(label = "设置公共邮箱名", description = "设置公共邮箱名:设置公共邮箱名")
	private String setPublicEmail;

	@Column(name = "SET_PUBLIC_EMAIL_VISIT_", length = 120)
	@PropertyDef(label = "设置对公共邮箱的访问权限", description = "0.0.0：0位是读者；1位是作者；2位是管理者")
	private String setPublicEmailVisit;

	@Column(name = "DELETE_EMAIL_", length = 120)
	@PropertyDef(label = "删除邮箱", description = "0:删除公共邮箱；1:删除个人邮箱")
	private String deleteEmail;

	@Column(name = "DELETE_PUBLIC_EMAIL_", length = 120)
	@PropertyDef(label = "删除公共邮箱", description = "删除公共邮箱：删除公共邮箱")
	private String deletePublicEmail;

	@Column(name = "DELETE_PRIVATE_EMAIL_", length = 120)
	@PropertyDef(label = "删除个人邮箱", description = "删除个人邮箱；删除个人邮箱")
	private String deletePrivateEmail;

	@Column(name = "CHANGE_EMAIL_", length = 120)
	@PropertyDef(label = "变更邮箱(仅适用个人邮箱变更)", description = "0:变更外室；1:变更对公共邮箱的访问权限")
	private String changeEmail;
	
	@Column(name = "CHANGE_PUBLIC_EMAIL_", length = 120)
	@PropertyDef(label = "变更公共邮箱", description = "变更公共邮箱；变更公共邮箱")
	private String changePublicEmail;
	
	@Column(name = "CHANGE_PRIVATE_EMAIL_", length = 120)
	@PropertyDef(label = "变更个人邮箱", description = "变更个人邮箱；变更个人邮箱")
	private String changePrivateEmail;

	@Column(name = "OLD_ROOM_", length = 120)
	@PropertyDef(label = "原处室", description = "原处室:原处室")
	private String oldRoom;

	@Column(name = "NEW_ROOM_", length = 120)
	@PropertyDef(label = "新处室", description = "新处室:新处室")
	private String newRoom;

	@Column(name = "ADD_VISIT_", length = 120)
	@PropertyDef(label = "增加访问权限", description = "0:读者；1:作者；2:管理者")
	private String addVisit;

	@Column(name = "DELETE_VISIT_", length = 120)
	@PropertyDef(label = "删除访问权限", description = "0:读者；1:作者；2:管理者")
	private String deleteVisit;

	@Column(name = "REASON_", length = 1000)
	@PropertyDef(label = "申请理由", description = "理由:理由")
	private String reason;

	@Column(name = "SQ_DEPT_OPINION_", length = 540)
	@PropertyDef(label = "申请部门负责人意见", description = "申请部门负责人意见:申请部门负责人意见")
	private String sqDeptOpinion;

	@Lob
	@PropertyDef(label = "申请部门负责人意见(盖章)", description = "申请部门负责人意见(盖章):申请部门负责人意见(盖章)")
	@Column(name = "SIGN_IMG_")
	private byte[] signImg;

	public String getChangePublicEmail() {
		return changePublicEmail;
	}

	public void setChangePublicEmail(String changePublicEmail) {
		this.changePublicEmail = changePublicEmail;
	}

	public String getChangePrivateEmail() {
		return changePrivateEmail;
	}

	public void setChangePrivateEmail(String changePrivateEmail) {
		this.changePrivateEmail = changePrivateEmail;
	}

	public String getDeletePublicEmail() {
		return deletePublicEmail;
	}

	public void setDeletePublicEmail(String deletePublicEmail) {
		this.deletePublicEmail = deletePublicEmail;
	}

	public String getDeletePrivateEmail() {
		return deletePrivateEmail;
	}

	public void setDeletePrivateEmail(String deletePrivateEmail) {
		this.deletePrivateEmail = deletePrivateEmail;
	}

	public String getNewEmail() {
		return newEmail;
	}

	public void setNewEmail(String newEmail) {
		this.newEmail = newEmail;
	}

	public byte[] getSignImg() {
		return signImg;
	}

	public void setSignImg(byte[] signImg) {
		this.signImg = signImg;
	}

	public String getDeptId() {
		return deptId;
	}

	public void setDeptId(String deptId) {
		this.deptId = deptId;
	}

	public String getDeptName() {
		return deptName;
	}

	public void setDeptName(String deptName) {
		this.deptName = deptName;
	}

	public Date getTime() {
		return time;
	}

	public void setTime(Date time) {
		this.time = time;
	}

	public String getUserCname() {
		return userCname;
	}

	public void setUserCname(String userCname) {
		this.userCname = userCname;
	}

	public String getTel() {
		return tel;
	}

	public void setTel(String tel) {
		this.tel = tel;
	}

	public int getSystem() {
		return system;
	}

	public void setSystem(int system) {
		this.system = system;
	}

	public String getPublicEmail() {
		return publicEmail;
	}

	public void setPublicEmail(String publicEmail) {
		this.publicEmail = publicEmail;
	}

	public String getPrivateEmail() {
		return privateEmail;
	}

	public void setPrivateEmail(String privateEmail) {
		this.privateEmail = privateEmail;
	}

	public String getSetPublicEmail() {
		return setPublicEmail;
	}

	public void setSetPublicEmail(String setPublicEmail) {
		this.setPublicEmail = setPublicEmail;
	}

	public String getSetPublicEmailVisit() {
		return setPublicEmailVisit;
	}

	public void setSetPublicEmailVisit(String setPublicEmailVisit) {
		this.setPublicEmailVisit = setPublicEmailVisit;
	}

	public String getDeleteEmail() {
		return deleteEmail;
	}

	public void setDeleteEmail(String deleteEmail) {
		this.deleteEmail = deleteEmail;
	}

	public String getChangeEmail() {
		return changeEmail;
	}

	public void setChangeEmail(String changeEmail) {
		this.changeEmail = changeEmail;
	}

	public String getOldRoom() {
		return oldRoom;
	}

	public void setOldRoom(String oldRoom) {
		this.oldRoom = oldRoom;
	}

	public String getNewRoom() {
		return newRoom;
	}

	public void setNewRoom(String newRoom) {
		this.newRoom = newRoom;
	}

	public String getAddVisit() {
		return addVisit;
	}

	public void setAddVisit(String addVisit) {
		this.addVisit = addVisit;
	}

	public String getDeleteVisit() {
		return deleteVisit;
	}

	public void setDeleteVisit(String deleteVisit) {
		this.deleteVisit = deleteVisit;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public String getSqDeptOpinion() {
		return sqDeptOpinion;
	}

	public void setSqDeptOpinion(String sqDeptOpinion) {
		this.sqDeptOpinion = sqDeptOpinion;
	}

}
